#!/bin/sh
# PCP QA Test No. 598
# Mr. Curly meets the ternary operator.
#
# Copyright (c) 2017 Ken McDonell.  All Rights Reserved.
#

seq=`basename $0`
echo "QA output created by $seq"

# get standard environment, filters and checks
. ./common.product
. ./common.filter
. ./common.check

_cleanup()
{
    cd $here
    $sudo rm -rf $tmp $tmp.*
}

status=1	# failure is the default!
trap "_cleanup; exit \$status" 0 1 2 3 15

# real QA test starts here
cat <<End-of-File >$tmp.config
# default
a.ok_scalar = sample.long.one > 0 ? sample.long.hundred : mkconst(42, semantics=instant, type=32)
a.ok_indom = sample.long.one > 0 ? sample.part_bin : mkconst(42, semantics=instant, type=32)
a.noval_op2_t = sample.long.one > 0 ? sample.bad.novalues : mkconst(42, semantics=instant, type=32)
a.noval_op2_f = sample.long.one < 0 ? sample.bad.novalues : mkconst(42, semantics=instant, type=32)
a.noval_op3_t = sample.long.one > 0 ? mkconst(42, semantics=instant, type=32) : sample.bad.novalues
a.noval_op3_f = sample.long.one < 0 ? mkconst(42, semantics=instant, type=32) : sample.bad.novalues
a.err_op2_t = sample.long.one > 0 ? sample.bad.fetch.again : mkconst(42, semantics=discrete, type=32)
a.err_op2_f = sample.long.one < 0 ? sample.bad.fetch.again : mkconst(42, semantics=discrete, type=32)
a.err_op3_t = sample.long.one > 0 ? mkconst(42, semantics=discrete, type=32) : sample.bad.fetch.again
a.err_op3_f = sample.long.one < 0 ? mkconst(42, semantics=discrete, type=32) : sample.bad.fetch.again
a.noval_op1 = sample.bad.novalues > 0 ? 1 : 2
a.err_op1 = sample.bad.fetch.again > 0 ? 1 : 2
End-of-File

export PCP_DERIVED_CONFIG=$tmp.config

pminfo -f a

# success, all done
status=0
exit
